<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>
<body>
  
  <script>
    // switch分支语句
    // switch 语句与 if 语句的关系最为密切，而且也是在其他语言中普遍使用的一种流程控制语句。

    // 语法
    // switch (值) {
    //  case 值: 语句块;    break;
    //  case 值: 语句块;    break;
    //  case 值: 语句块;    break;
    //  ......
    //  default: 语句块;
    // }

    // switch 语句的含义：
    // 如果switch表达式括号的值恒等于case后面的值 ，则执行此case后面的语句 
    // 而 break 关键字会导致代码执行流跳出 switch 语句
    // 如果省略 break 关键字，就会导致执行完当前 case 后，继续执行下一个 case(case的穿透力)
    // 最后的 default 关键字则用于在表达式不匹配前面任何一种情形的时候，执行此代码


    // 输入一个数字0-6,输入的是0，输出"星期天"，输入是1， 输出"星期一"......
    var num = window.prompt("请输入数字");
    switch (num) {
      case "0": console.log("星期天"); break;
      case "1": 
        console.log("星期一");
        break;
      case "2": console.log("星期二"); break;
      case "3": console.log("星期三"); break;
      case "4": console.log("星期四"); break;
      case "5": console.log("星期五"); break;
      case "6": console.log("星期六"); break;
      default: console.log("请输入0-6的整数");
    }


    // 绝大部分情况下，这两种写法是可以相互替换的
    // if可以写范围，更加的领过
    // switch更适用于case后面是确定的值的时候
    // 当条件比较少的时候，if的执行效率会比switch更高
    // 当条件比较多的时候，switch的执行效率会更高，结构更加清晰
  </script>
</body>
</html>